本章中，您学习了在前端使用的编译器技术。从项目的布局开始，您为词法分析器、解析器和语义分析器创建了单独的库。为了向用户输出消息，您扩展了现有的LLVM类，允许集中存储消息。词法分析器目前已经分成几个接口。\par

然后，您学习了如何根据语法描述构造递归下降解析器、要避免哪些缺陷，以及如何使用生成器来完成这项工作。您构建的语义分析器执行语言所需的所有语义检查，同时与解析器和AST构造交织在一起。\par

编码工作的结果是一个修饰过的AST，下一章中将使用它生成IR代码和目标代码。\par

\newpage